package com.mycontract.suitepro.contract

/** 优先级3：从剪贴板打开 */
object ContractParamsFromClipboard {

    // 有效的标识
    const val VALID_CLIPBOARD_TET_FLAG = "contractsuite="

    // 订单号
    var mOrderId: String = ""

    // 产品
    var mProduct: String = ""

    // 手机号
    var mMobile: String = ""

    // 来源
    var mSourceType: String = ""

    // scheme 只有是mSourceType=app时才有值
    var mScheme: String = ""

    // host mSourceType=h5时，它为来源地址
    var mHost: String = ""

    // 粘贴内容
    var mClipboardText :String = ""


    /** 根据外部传参数初始化 */
    fun initSourceData(clipboardText: String?) {
        println("--->clipboardText:$clipboardText")
        // 重置
        mClipboardText = ""

        // 过滤
        clipboardText?.let { content ->
            //判断是否为有效的传参
            if(content.startsWith(VALID_CLIPBOARD_TET_FLAG)) {
                // 保存
                mClipboardText = content.substring(VALID_CLIPBOARD_TET_FLAG.length)
            }

//            if (content.contains("&")) {
//                val paramList = content.split("&")
//                paramList.forEach { item ->
//                    val itemList = item.split("=")
//                    if (itemList.size > 1) {
//                        val pKey = itemList[0]
//                        val pValue = itemList[1]
//
//                        // 订单号
//                        if (pKey.equals(ContractReviceParams.KEY_ORDER_ID, true)) {
//                            mOrderId = pValue
//                        }
//                        // 手机号
//                        if (pKey.equals(ContractReviceParams.KEY_MOBILE, true)) {
//                            mMobile = pValue
//                        }
//                        // 产品
//                        if (pKey.equals(ContractReviceParams.KEY_PRODUCT, true)) {
//                            mProduct = pValue
//                        }
//                        // 来源 app/h5
//                        if (pKey.equals(ContractReviceParams.KEY_SOURCE_TYPE, true)) {
//                            mSourceType = pValue
//                        }
//                        // scheme
//                        if (pKey.equals(ContractReviceParams.KEY_SCHEME, true)) {
//                            mScheme = pValue
//                        }
//                        // host
//                        if (pKey.equals(ContractReviceParams.KEY_HOST, true)) {
//                            mHost = pValue
//                        }
//                    }
//                }
//            }
        }

        // 输出
        printData()
    }

    /** 是否为有效回传值 */
    fun isValidParams(): Boolean {
        return mClipboardText.isNotBlank()
//        return mMobile.isNotBlank()
    }

    /** 输出 */
    fun printData() {
        println("--->clipboardText:${mClipboardText}")
//        println("--->orderId:${mOrderId}\nmobile:${mMobile}\nproduct=${mProduct}\nsourceType=${mSourceType}\nscheme=${mScheme}\nhost=${mHost}")
    }
}